Instalaremos los paquetes de MySQL de los repositorios de Debian con: #apt-get install mysql-server
La primera medida a tomar para preservar la seguridad de nuestras bases de datos es poner contraseña al usuario root puesto que su contraseña por defecto está en blanco.
No deberemos olvidar tampoco habilitar el archivo de log (que por defecto no está indicado). Para esto, descomentaremos en /etc/mysql/my.cnf la siguiente línea:
log = /var/log/mysql.log
Crear una BD
$ mysqladmin -u root -p create nombredb
O también dentro de MySQL:
mysql>createdatabase nombredb;
Crear un usuario
Para crear un usuario y darle permisos ejecutamos:
mysql>grantallon bd.*to usuario@localhost IDENTIFIED BY 'pass'
mysql> flush privileges;
Ver los usuarios de MySQL
SELECT*FROM mysql.USER;
BD Físicamente
Las bases de datos, físicamente se encuentran en el directorio: /var/lib/mysql
Hacer un backup de la BD
Hacer backup de la base de datos (estructura + datos):
UPDATE wp_posts SET post_content =REPLACE(post_content,'http://www.antiguo.com','http://www.nuevo.com');
En este ejemplo, vemos que de la tabla wp_posts cambiaremos el contenido de post_content, que es el campo de la tabla que contiene el contenido de los posts, con el mismo contenido al que previamente le habremos cambiado todas las apariciones de http://www.antiguo.com por la ruta http://www.nuevo.com.
Optimizar la BD
OPTIMIZE TABLE debe ser usado si ha borrado una gran parte de una tabla o si ha hecho muchos cambios a una tabla con filas de longitud variable (tablas que tienen columnas VARCHAR, BLOB o TEXT). Los registros borrados son mantenidos en una lista enlazada y las subsecuentes operaciones INSERT reusan las posiciones de los registros anteriores. Puede utilizar OPTIMIZE TABLE para reclamar ese espacio inutilizado y para desgragmentar el archivo con los datos.
Ver variables de mysql
mysql -p -uroot -e 'show variables'
Ver procesos de mysql
Puedes contar fácilmente los procesos de MySQL que en un instante dado se estén ejecutando en el sistema con el siguiente comando:
mysql -p -uroot -e 'show processlist'| wc -l
Modificar el número máximo de conexiones
Para cambiar los valores de configuración de MySQL, debemos editar el fichero /etc/my.cnf:
[mysqld]
set-variable=max_connections=200
Y luego reiniciar MySQL, para que lea las nuevas variables de configuración.
El número de conexiones máximas hay que tenerlo bien controlado, porque puede saturar de trabajo al servidor y llegar a hacerlo caer o ponerlo en estado off-line. Las plataformas potentes, como Linux u otros Unix, pueden aguantar fácilmente 500 ó 1.000 conexiones. Depende mucho de la memoria que tenga disponible el sistema.
Si queremos saber qué valor poner, podemos comprobar el número máximo de conexiones que ha necesitado nuestro servidor con esta sentencia SQL:
Table of Contents
Instalación
Instalaremos los paquetes de MySQL de los repositorios de Debian con:#apt-get install mysql-server
La primera medida a tomar para preservar la seguridad de nuestras bases de datos es poner contraseña al usuario root puesto que su contraseña por defecto está en blanco.
No deberemos olvidar tampoco habilitar el archivo de log (que por defecto no está indicado). Para esto, descomentaremos en /etc/mysql/my.cnf la siguiente línea:
log = /var/log/mysql.log
Crear una BD
O también dentro de MySQL:Crear un usuario
Para crear un usuario y darle permisos ejecutamos:
Ver los usuarios de MySQL
BD Físicamente
Las bases de datos, físicamente se encuentran en el directorio: /var/lib/mysql
Hacer un backup de la BD
Hacer backup de la base de datos (estructura + datos):Para luego cargarla de nuevo:
Borrar una BD
$DROP DATABASE nombre_de_la_base_de_datos;Volcar el resultado de una select a un fichero
Consultas directas
Mostrar las BD de MySQL
Mostrar tablas de una BD
Mostrar el contenido de una determinada tabla
Reemplazar valores almacenados dentro de los campos de nuestra BD
Usaremos la función SQL replace
En este ejemplo, vemos que de la tabla wp_posts cambiaremos el contenido de post_content, que es el campo de la tabla que contiene el contenido de los posts, con el mismo contenido al que previamente le habremos cambiado todas las apariciones de http://www.antiguo.com por la ruta http://www.nuevo.com.
Optimizar la BD
OPTIMIZE TABLE debe ser usado si ha borrado una gran parte de una tabla o si ha hecho muchos cambios a una tabla con filas de longitud variable (tablas que tienen columnas VARCHAR, BLOB o TEXT). Los registros borrados son mantenidos en una lista enlazada y las subsecuentes operaciones INSERT reusan las posiciones de los registros anteriores. Puede utilizar OPTIMIZE TABLE para reclamar ese espacio inutilizado y para desgragmentar el archivo con los datos.
Ver variables de mysql
Ver procesos de mysql
Puedes contar fácilmente los procesos de MySQL que en un instante dado se estén ejecutando en el sistema con el siguiente comando:
Modificar el número máximo de conexiones
Para cambiar los valores de configuración de MySQL, debemos editar el fichero /etc/my.cnf:
Y luego reiniciar MySQL, para que lea las nuevas variables de configuración.
El número de conexiones máximas hay que tenerlo bien controlado, porque puede saturar de trabajo al servidor y llegar a hacerlo caer o ponerlo en estado off-line. Las plataformas potentes, como Linux u otros Unix, pueden aguantar fácilmente 500 ó 1.000 conexiones. Depende mucho de la memoria que tenga disponible el sistema.
Si queremos saber qué valor poner, podemos comprobar el número máximo de conexiones que ha necesitado nuestro servidor con esta sentencia SQL:
[[http://www.codex.org/2006/06/01/mediawiki-ldap-authentication/|]]
Tuneando MySQL